/**
 * 
 */
package pt.xpand.xinx.entities.interfaces;

import pt.xpand.xinx.entities.Board;
import pt.xpand.xinx.entities.Position;

/**
 * @author Kiko
 *
 */
public interface IPlayer {

	/**
	 * @param name
	 */
	public abstract void setName(String name);

	/**
	 * @return name
	 */
	public abstract String getName();

	/**
	 * Decides the players next move
	 * 
	 * @return Vector2f containing the position to play
	 */
	public abstract Position play(Board board);

	/**
	 * Sets the symbol to be used by the player
	 * 
	 * @param symbol
	 */
	public abstract void setSymbol(String symbol);

	/**
	 * returns the sybol that will be used by the player
	 * 
	 * @return String
	 */
	public abstract String getSymbol();
	
}